package com.monolithiot.cdn.management.service;

import com.monolithiot.cdn.management.common.entity.Project;

import java.util.List;

/**
 * 2018/11/18 Create by 郭文梁
 * BaseService
 * 业务服务基类
 *
 * @author 郭文梁
 * @date 2018/11/18
 */
public interface BaseService<T> {
    /**
     * 查询所有
     *
     * @return Entity List
     */
    /*package private*/ List<T> list();

    /**
     * 保存数据
     *
     * @param o 数据
     * @return 保存结果
     */
    /*package private */ T save(T o);

    /**
     * 通过主键查找
     *
     * @param id 主键
     * @return 实体对象
     */
    /*package private*/ T findById(Integer id);

    /**
     * 更新数据
     *
     * @param obj 数据
     * @return Entity
     */
    /*package private*/ T update(T obj);
}
